﻿namespace Maltose.Data
{
    /// <summary>
    /// 使用自定义T-SQL语句分页
    /// </summary>
    public class SqlPageCustom : ICustomTSQLPage
    {
        /// <summary>
        /// T-SQL语句
        /// </summary>
        public string Sql { get; set; }

        /// <summary>
        /// 分页字段 默认 Id 通常是主键，该值必须为唯一，如果MSSQL是大于等于 2020版本
        /// </summary>
        public string KeyFiled { get; set; } = "Id";

        /// <summary>
        /// 分页当前页 默认=1
        /// </summary>
        public int PageIndex { get; set; } = 1;

        /// <summary>
        /// 分页大小 默认=10
        /// </summary>
        public int PageSize { get; set; } = 10;

        /// <summary>
        /// 条件参数 键值对
        /// </summary>
        public SqlPageString Where { get; set; } = new SqlPageString();
    }


    /// <summary>
    /// 使用自定义T-SQL语句分页 不带统计参数
    /// </summary>
    public class SqlPageCustomNoneCount : SqlPageCustom
    {

    }
}
